263 research outputs found

    Finding kk Simple Shortest Paths and Cycles

    Get PDF
    The problem of finding multiple simple shortest paths in a weighted directed graph G=(V,E)G=(V,E) has many applications, and is considerably more difficult than the corresponding problem when cycles are allowed in the paths. Even for a single source-sink pair, it is known that two simple shortest paths cannot be found in time polynomially smaller than n3n^3 (where n=Vn=|V|) unless the All-Pairs Shortest Paths problem can be solved in a similar time bound. The latter is a well-known open problem in algorithm design. We consider the all-pairs version of the problem, and we give a new algorithm to find kk simple shortest paths for all pairs of vertices. For k=2k=2, our algorithm runs in O(mn+n2logn)O(mn + n^2 \log n) time (where m=Em=|E|), which is almost the same bound as for the single pair case, and for k=3k=3 we improve earlier bounds. Our approach is based on forming suitable path extensions to find simple shortest paths; this method is different from the `detour finding' technique used in most of the prior work on simple shortest paths, replacement paths, and distance sensitivity oracles. Enumerating simple cycles is a well-studied classical problem. We present new algorithms for generating simple cycles and simple paths in GG in non-decreasing order of their weights; the algorithm for generating simple paths is much faster, and uses another variant of path extensions. We also give hardness results for sparse graphs, relative to the complexity of computing a minimum weight cycle in a graph, for several variants of problems related to finding kk simple paths and cycles.Comment: The current version includes new results for undirected graphs. In Section 4, the notion of an (m,n) reduction is generalized to an f(m,n) reductio

    Bounding Cache Miss Costs of Multithreaded Computations Under General Schedulers

    Full text link
    We analyze the caching overhead incurred by a class of multithreaded algorithms when scheduled by an arbitrary scheduler. We obtain bounds that match or improve upon the well-known O(Q+S(M/B))O(Q+S \cdot (M/B)) caching cost for the randomized work stealing (RWS) scheduler, where SS is the number of steals, QQ is the sequential caching cost, and MM and BB are the cache size and block (or cache line) size respectively.Comment: Extended abstract in Proceedings of ACM Symp. on Parallel Alg. and Architectures (SPAA) 2017, pp. 339-350. This revision has a few small updates including a missing citation and the replacement of some big Oh terms with precise constant

    Brave New World: A Literature Review of Emerging Donors and the Changing Nature of Foreign Assistanc- Working Paper 273

    Get PDF
    In this paper, we look at the scale and scope of emerging donors, many of which are developing economies themselves. On the basis of a survey of the literature, we find that estimates of annual aid flows from new donors (so-called non-DAC donors) vary greatly and are somewhere between 11billionand11 billion and 41.7 billion, or 8 and 31 percent of global gross ODA. We find that new donors are not a monolithic group but instead represent three distinct models of aid delivery, which we describe as the DAC Model, the Arab Model and the Southern Model. While we see the need to increase transparency and accountability of aid flows across these delivery models, we do not see a convergence to the DAC model. Rather, emerging donors may follow different paths, in accordance with their own traditions and standards. We argue that encouraging aid transparency, especially reporting data on project-level assistance, must be the core focus of the aid community. To engage the non-DAC donors, the forum for international aid coordination might need to be moved away from the OECD-DAC platform; DAC could instead serve as one donor caucus within a larger international system of aid reporting.OECD-DAC, Emerging donors, BRICs, Arab donors, Aid transparency
    corecore